www.gusucode.com > 7-DOF Robotic Arm Model in MATLAB工具箱matlab源码 > 7-DOF Robotic Arm Model in MATLAB/LWR_DataFile.m

    % Simscape(TM) Multibody(TM) version: 6.0

% This is a model data file derived from a Simscape Multibody Import XML file using the smimport function.
% The data in this file sets the block parameter values in an imported Simscape Multibody model.
% For more information on this file, see the smimport function help page in the Simscape Multibody documentation.
% You can modify numerical values, but avoid any other changes to this file.
% Do not add code to this file. Do not edit the physical units shown in comments.

%%%VariableName:smiData


%============= RigidTransform =============%

%Initialize the RigidTransform structure array by filling in null values.
smiData.RigidTransform(32).translation = [0.0 0.0 0.0];
smiData.RigidTransform(32).angle = 0.0;
smiData.RigidTransform(32).axis = [0.0 0.0 0.0];
smiData.RigidTransform(32).ID = '';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(1).translation = [118.57525080451127 169.8537822935923 -9.6856856884115317];  % mm
smiData.RigidTransform(1).angle = 2.2217794686306709;  % rad
smiData.RigidTransform(1).axis = [-0.73638586090441738 -0.61426613759061355 0.28357181818645072];
smiData.RigidTransform(1).ID = 'B[Link7^KUKA Arm LWR-1:-:Link6^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(2).translation = [118.57525080450911 169.85378229358886 -9.6856856884094782];  % mm
smiData.RigidTransform(2).angle = 2.2217794686306704;  % rad
smiData.RigidTransform(2).axis = [-0.73638586090441793 -0.61426613759061333 0.28357181818644972];
smiData.RigidTransform(2).ID = 'F[Link7^KUKA Arm LWR-1:-:Link6^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(3).translation = [92.481135775410522 179.74271435555553 28.646659446240037];  % mm
smiData.RigidTransform(3).angle = 0.49904531461481327;  % rad
smiData.RigidTransform(3).axis = [-0.37534739163732878 -0.92267299002479242 0.088254682990554029];
smiData.RigidTransform(3).ID = 'B[Link5^KUKA Arm LWR-1:-:Link6^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(4).translation = [92.481135775410479 179.74271435555551 28.646659446240065];  % mm
smiData.RigidTransform(4).angle = 0.4990453146148125;  % rad
smiData.RigidTransform(4).axis = [-0.375347391637327 -0.92267299002479308 0.088254682990553515];
smiData.RigidTransform(4).ID = 'F[Link5^KUKA Arm LWR-1:-:Link6^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(5).translation = [77.109134366017486 187.68870878964998 72.789894999640026];  % mm
smiData.RigidTransform(5).angle = 1.845635270898992;  % rad
smiData.RigidTransform(5).axis = [0.4656650650152821 0.46201783320525425 0.75478180226117997];
smiData.RigidTransform(5).ID = 'B[Link5^KUKA Arm LWR-1:-:Link4^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(6).translation = [77.1091343660174 187.68870878964998 72.789894999640126];  % mm
smiData.RigidTransform(6).angle = 1.8456352708989927;  % rad
smiData.RigidTransform(6).axis = [0.46566506501528099 0.46201783320525441 0.75478180226118052];
smiData.RigidTransform(6).ID = 'F[Link5^KUKA Arm LWR-1:-:Link4^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(7).translation = [79.23767349664476 146.53282113952017 93.000652850329544];  % mm
smiData.RigidTransform(7).angle = 1.7759426795556292;  % rad
smiData.RigidTransform(7).axis = [0.47170694134614771 -0.57102401823418436 0.67188104012953642];
smiData.RigidTransform(7).ID = 'B[Link4^KUKA Arm LWR-1:-:Link3^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(8).translation = [79.237673496645471 146.53282113951974 93.00065285032899];  % mm
smiData.RigidTransform(8).angle = 1.7759426795556281;  % rad
smiData.RigidTransform(8).axis = [0.47170694134614727 -0.57102401823418403 0.67188104012953709];
smiData.RigidTransform(8).ID = 'F[Link4^KUKA Arm LWR-1:-:Link3^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(9).translation = [62.69412413219397 100.81305653664941 105.76100547414353];  % mm
smiData.RigidTransform(9).angle = 1.8424992296690295;  % rad
smiData.RigidTransform(9).axis = [0.45998687765285201 0.45998687765285107 0.75948939740746957];
smiData.RigidTransform(9).ID = 'B[Link3^KUKA Arm LWR-1:-:Link2^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(10).translation = [62.694124132193792 100.81305653664961 105.76100547414353];  % mm
smiData.RigidTransform(10).angle = 1.8424992296690303;  % rad
smiData.RigidTransform(10).axis = [0.45998687765285168 0.45998687765285151 0.75948939740746946];
smiData.RigidTransform(10).ID = 'F[Link3^KUKA Arm LWR-1:-:Link2^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(11).translation = [54.939657333307004 56.313056536649441 101.70751997830754];  % mm
smiData.RigidTransform(11).angle = 2.0943951023931935;  % rad
smiData.RigidTransform(11).axis = [-0.57735026918962506 -0.57735026918962506 -0.57735026918962717];
smiData.RigidTransform(11).ID = 'B[Link2^KUKA Arm LWR-1:-:Link 1^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(12).translation = [54.939657333309725 56.313056536653754 101.70751997830689];  % mm
smiData.RigidTransform(12).angle = 3.1319697721962858;  % rad
smiData.RigidTransform(12).axis = [-0.0048114778253200794 -0.70709859626544802 -0.7070985962654498];
smiData.RigidTransform(12).ID = 'F[Link2^KUKA Arm LWR-1:-:Link 1^KUKA Arm LWR-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(13).translation = [60.478562189654745 100.81305653664941 104.60286676104755];  % mm
smiData.RigidTransform(13).angle = 2.5461546484480722;  % rad
smiData.RigidTransform(13).axis = [-0.50902243811240289 0.18583774340310383 -0.84045255108479922];
smiData.RigidTransform(13).ID = 'AssemblyGround[Link2^KUKA Arm LWR-1:ring-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(14).translation = [54.939657333307487 56.313056536646677 101.70751997831185];  % mm
smiData.RigidTransform(14).angle = 2.0859765737835021;  % rad
smiData.RigidTransform(14).axis = [0.58297632738193061 0.57451658014033702 -0.57451658014031914];
smiData.RigidTransform(14).ID = 'AssemblyGround[Link2^KUKA Arm LWR-1:ring-2]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(15).translation = [54.939657333307004 56.313056536649441 101.70751997830754];  % mm
smiData.RigidTransform(15).angle = 1.8424992296690268;  % rad
smiData.RigidTransform(15).axis = [-0.75948939740746957 0.45998687765285068 0.45998687765285229];
smiData.RigidTransform(15).ID = 'AssemblyGround[Link2^KUKA Arm LWR-1:unity-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(16).translation = [79.23767349664476 146.53282113952017 93.000652850329544];  % mm
smiData.RigidTransform(16).angle = 1.2243405994347616;  % rad
smiData.RigidTransform(16).axis = [0.98358890304619007 -0.17997362951182641 -0.012742153849821629];
smiData.RigidTransform(16).ID = 'AssemblyGround[Link4^KUKA Arm LWR-1:ring-2]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(17).translation = [79.237673496644774 146.53282113952017 93.000652850329487];  % mm
smiData.RigidTransform(17).angle = 2.6479080818130529;  % rad
smiData.RigidTransform(17).axis = [-0.49666945418451225 -0.68241271162683104 -0.53631366222591637];
smiData.RigidTransform(17).ID = 'AssemblyGround[Link4^KUKA Arm LWR-1:unity-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(18).translation = [81.566839067553843 187.66458386167136 75.054467096472294];  % mm
smiData.RigidTransform(18).angle = 2.9186645746390147;  % rad
smiData.RigidTransform(18).axis = [-0.83900080422157353 -0.17786461416350791 0.51423907819614345];
smiData.RigidTransform(18).ID = 'AssemblyGround[Link4^KUKA Arm LWR-1:ring-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(19).translation = [78.793780437777954 144.2237421191731 93.849836593746176];  % mm
smiData.RigidTransform(19).angle = 1.2243405994347607;  % rad
smiData.RigidTransform(19).axis = [0.98358890304619051 -0.17997362951182408 -0.012742153849824071];
smiData.RigidTransform(19).ID = 'AssemblyGround[Link3^KUKA Arm LWR-1:ring-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(20).translation = [62.69412413219397 100.81305653664941 105.76100547414353];  % mm
smiData.RigidTransform(20).angle = 2.5461546484480717;  % rad
smiData.RigidTransform(20).axis = [-0.50902243811240311 0.18583774340310383 -0.84045255108479922];
smiData.RigidTransform(20).ID = 'AssemblyGround[Link3^KUKA Arm LWR-1:ring-2]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(21).translation = [78.349887378911134 141.91466309882611 94.699020337162864];  % mm
smiData.RigidTransform(21).angle = 1.6872841401875587;  % rad
smiData.RigidTransform(21).axis = [0.69817510504465619 0.32268081596386416 -0.63908419922947413];
smiData.RigidTransform(21).ID = 'AssemblyGround[Link3^KUKA Arm LWR-1:unity kuka-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(22).translation = [54.939657333306968 53.813056536649441 101.70751997830747];  % mm
smiData.RigidTransform(22).angle = 1.6518793302239745;  % rad
smiData.RigidTransform(22).axis = [0.92203509163424435 -0.27372549186642342 0.27372549186642248];
smiData.RigidTransform(22).ID = 'AssemblyGround[Link 1^KUKA Arm LWR-1:ring-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(23).translation = [54.939657333308581 51.313056536645782 101.70751997830844];  % mm
smiData.RigidTransform(23).angle = 2.2601908186519664;  % rad
smiData.RigidTransform(23).axis = [0.47163707488490952 -0.62352163939755989 0.62352163939753158];
smiData.RigidTransform(23).ID = 'AssemblyGround[Link 1^KUKA Arm LWR-1:base-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(24).translation = [54.939657333306968 31.313056536648848 101.7075199783074];  % mm
smiData.RigidTransform(24).angle = 1.5707963267949003;  % rad
smiData.RigidTransform(24).axis = [1 0 0];
smiData.RigidTransform(24).ID = 'AssemblyGround[Link 1^KUKA Arm LWR-1:ring for base-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(25).translation = [93.595185365107966 179.31845102608369 26.449184955157101];  % mm
smiData.RigidTransform(25).angle = 2.862979377970698;  % rad
smiData.RigidTransform(25).axis = [-0.55835892046086 0.80386620217915239 -0.20502303513471107];
smiData.RigidTransform(25).ID = 'AssemblyGround[Link6^KUKA Arm LWR-1:unity-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(26).translation = [93.595185365107966 179.31845102608369 26.449184955157101];  % mm
smiData.RigidTransform(26).angle = 1.2793518860280209;  % rad
smiData.RigidTransform(26).axis = [-0.33747611348454815 -0.23645228667090018 0.91115321925319814];
smiData.RigidTransform(26).ID = 'AssemblyGround[Link6^KUKA Arm LWR-1:ring-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(27).translation = [79.337986716785579 187.67664632566104 73.922181048056117];  % mm
smiData.RigidTransform(27).angle = 2.9469094778167553;  % rad
smiData.RigidTransform(27).axis = [-0.8423121808468923 -0.15457871186662411 0.51634834349943215];
smiData.RigidTransform(27).ID = 'AssemblyGround[Link5^KUKA Arm LWR-1:ring-2]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(28).translation = [92.481135775410522 179.74271435555553 28.646659446240037];  % mm
smiData.RigidTransform(28).angle = 1.2793518860280195;  % rad
smiData.RigidTransform(28).axis = [-0.3374761134845482 -0.23645228667090046 0.91115321925319825];
smiData.RigidTransform(28).ID = 'AssemblyGround[Link5^KUKA Arm LWR-1:ring-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(29).translation = [91.367086185713063 180.16697768502729 30.844133937322994];  % mm
smiData.RigidTransform(29).angle = 1.5883382829770223;  % rad
smiData.RigidTransform(29).axis = [-0.31135777989243413 -0.14825815747713206 0.93865640766040714];
smiData.RigidTransform(29).ID = 'AssemblyGround[Link5^KUKA Arm LWR-1:unity-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(30).translation = [123.72523354729793 167.9410008256973 -6.7055103907022184];  % mm
smiData.RigidTransform(30).angle = 1.2460728573987403;  % rad
smiData.RigidTransform(30).axis = [0.019846352306236638 0.87629879753751716 -0.4813590549002254];
smiData.RigidTransform(30).ID = 'AssemblyGround[Link7^KUKA Arm LWR-1:head-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(31).translation = [127.23769779419442 163.05304019252102 -15.912596561841907];  % mm
smiData.RigidTransform(31).angle = 3.0981553250167093;  % rad
smiData.RigidTransform(31).axis = [-0.49855989955583946 0.81876451947549589 -0.284715100061327];
smiData.RigidTransform(31).ID = 'AssemblyGround[Link7^KUKA Arm LWR-1:caméra-1]';

%Translation Method - Cartesian
%Rotation Method - Arbitrary Axis
smiData.RigidTransform(32).translation = [0 0 0];  % mm
smiData.RigidTransform(32).angle = 0;  % rad
smiData.RigidTransform(32).axis = [0 0 0];
smiData.RigidTransform(32).ID = 'RootGround[Link 1^KUKA Arm LWR-1]';


%============= Solid =============%
%Center of Mass (CoM) %Moments of Inertia (MoI) %Product of Inertia (PoI)

%Initialize the Solid structure array by filling in null values.
smiData.Solid(7).mass = 0.0;
smiData.Solid(7).CoM = [0.0 0.0 0.0];
smiData.Solid(7).MoI = [0.0 0.0 0.0];
smiData.Solid(7).PoI = [0.0 0.0 0.0];
smiData.Solid(7).color = [0.0 0.0 0.0];
smiData.Solid(7).opacity = 0.0;
smiData.Solid(7).ID = '';

%Inertia Type - Custom
%Visual Properties - Simple
smiData.Solid(1).mass = 0;  % kg
smiData.Solid(1).CoM = [0 0 0];  % mm
smiData.Solid(1).MoI = [0 0 0];  % kg*mm^2
smiData.Solid(1).PoI = [0 0 0];  % kg*mm^2
smiData.Solid(1).color = [0.792156862745098 0.81960784313725488 0.93333333333333335];
smiData.Solid(1).opacity = 1;
smiData.Solid(1).ID = 'ring*:*Default';

%Inertia Type - Custom
%Visual Properties - Simple
smiData.Solid(2).mass = 0;  % kg
smiData.Solid(2).CoM = [0 0 0];  % mm
smiData.Solid(2).MoI = [0 0 0];  % kg*mm^2
smiData.Solid(2).PoI = [0 0 0];  % kg*mm^2
smiData.Solid(2).color = [1 0.5490196078431373 0];
smiData.Solid(2).opacity = 1;
smiData.Solid(2).ID = 'unity*:*Default';

%Inertia Type - Custom
%Visual Properties - Simple
smiData.Solid(3).mass = 0;  % kg
smiData.Solid(3).CoM = [0 0 0];  % mm
smiData.Solid(3).MoI = [0 0 0];  % kg*mm^2
smiData.Solid(3).PoI = [0 0 0];  % kg*mm^2
smiData.Solid(3).color = [0.4705882352941177 0.4705882352941177 0.50196078431372548];
smiData.Solid(3).opacity = 1;
smiData.Solid(3).ID = 'unity kuka*:*Default';

%Inertia Type - Custom
%Visual Properties - Simple
smiData.Solid(4).mass = 0;  % kg
smiData.Solid(4).CoM = [0 0 0];  % mm
smiData.Solid(4).MoI = [0 0 0];  % kg*mm^2
smiData.Solid(4).PoI = [0 0 0];  % kg*mm^2
smiData.Solid(4).color = [1 0.5490196078431373 0];
smiData.Solid(4).opacity = 1;
smiData.Solid(4).ID = 'base*:*Default';

%Inertia Type - Custom
%Visual Properties - Simple
smiData.Solid(5).mass = 0;  % kg
smiData.Solid(5).CoM = [0 0 0];  % mm
smiData.Solid(5).MoI = [0 0 0];  % kg*mm^2
smiData.Solid(5).PoI = [0 0 0];  % kg*mm^2
smiData.Solid(5).color = [0.792156862745098 0.81960784313725488 0.93333333333333335];
smiData.Solid(5).opacity = 1;
smiData.Solid(5).ID = 'ring for base*:*Default';

%Inertia Type - Custom
%Visual Properties - Simple
smiData.Solid(6).mass = 0.00014294481319601716;  % kg
smiData.Solid(6).CoM = [-0.21902101101548563 3.1677694336687818e-05 3.1581955316714398];  % mm
smiData.Solid(6).MoI = [0.011868030697135303 0.012399860167566199 0.015878611152393564];  % kg*mm^2
smiData.Solid(6).PoI = [-3.7808195094384897e-08 -0.00011042734408098574 -2.2968845901983385e-08];  % kg*mm^2
smiData.Solid(6).color = [0.59999999999999998 0.59999999999999998 0.59999999999999998];
smiData.Solid(6).opacity = 1;
smiData.Solid(6).ID = 'head*:*Default';

%Inertia Type - Custom
%Visual Properties - Simple
smiData.Solid(7).mass = 4.3349357300101846e-05;  % kg
smiData.Solid(7).CoM = [0 0 3.2265928381281732];  % mm
smiData.Solid(7).MoI = [0.0008073662066007993 0.00080736620337184173 0.0013917709087202645];  % kg*mm^2
smiData.Solid(7).PoI = [0 0 0];  % kg*mm^2
smiData.Solid(7).color = [0.792156862745098 0.81960784313725488 0.93333333333333335];
smiData.Solid(7).opacity = 1;
smiData.Solid(7).ID = 'caméra*:*Default';


%============= Joint =============%
%X Revolute Primitive (Rx) %Y Revolute Primitive (Ry) %Z Revolute Primitive (Rz)
%X Prismatic Primitive (Px) %Y Prismatic Primitive (Py) %Z Prismatic Primitive (Pz) %Spherical Primitive (S)
%Constant Velocity Primitive (CV) %Lead Screw Primitive (LS)
%Position Target (Pos)

%Initialize the RevoluteJoint structure array by filling in null values.
smiData.RevoluteJoint(5).Rz.Pos = 0.0;
smiData.RevoluteJoint(5).ID = '';

smiData.RevoluteJoint(1).Rz.Pos = 171.73204711876244;  % deg
smiData.RevoluteJoint(1).ID = '[Link7^KUKA Arm LWR-1:-:Link6^KUKA Arm LWR-1]';

smiData.RevoluteJoint(2).Rz.Pos = 134.9545597060625;  % deg
smiData.RevoluteJoint(2).ID = '[Link5^KUKA Arm LWR-1:-:Link6^KUKA Arm LWR-1]';

smiData.RevoluteJoint(3).Rz.Pos = 20.906941333594816;  % deg
smiData.RevoluteJoint(3).ID = '[Link5^KUKA Arm LWR-1:-:Link4^KUKA Arm LWR-1]';

smiData.RevoluteJoint(4).Rz.Pos = -152.12714563974563;  % deg
smiData.RevoluteJoint(4).ID = '[Link4^KUKA Arm LWR-1:-:Link3^KUKA Arm LWR-1]';

smiData.RevoluteJoint(5).Rz.Pos = 34.574752870907624;  % deg
smiData.RevoluteJoint(5).ID = '[Link3^KUKA Arm LWR-1:-:Link2^KUKA Arm LWR-1]';